<%@page import="sun.java2d.d3d.D3DSurfaceData"%>
<%@page import="Proxies.StringArray"%>
<%@page import="com.sun.org.apache.bcel.internal.generic.DDIV"%>
<%@page import="java.text.SimpleDateFormat"%>
<%@page import="java.util.Iterator"%>
<%@page import="Proxies.CtrlUsuariosWSService"%>
<%@page import="Proxies.CtrlUsuariosWS"%>
<%@page import="javax.xml.namespace.QName"%>
<%@page import="java.net.URL"%>
<%@page import="Proxies.DataUsuario"%>
<%

    DataUsuario usrSolicitante = (DataUsuario) session.getAttribute("usr");
    String IP = (String) session.getAttribute("SERVIDOR");
    URL dirUsr = new URL(IP + "CtrlUsuarios?wsdl");
    QName qNaUsr = new QName("http://WebServices/", "CtrlUsuariosWSService");
    CtrlUsuariosWS ctrlUsr = new CtrlUsuariosWSService(dirUsr, qNaUsr).getCtrlUsuariosWSPort();
    Iterator<DataUsuario> iteraUsr = ctrlUsr.listaUsuarios().getItem().iterator();
    DataUsuario usr = null;
    SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy");
    StringArray amigosEnComun = null;

%>

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
        <link rel="stylesheet" type="text/css" href="Estilos/estilos.css"/>
        <script type="text/javascript" src ="js/funciones.js"></script>
        <link rel="shortcut icon" href="Media/images/favicon.ico"/>
        <title>Solicitar amistad</title>
    </head>
    <body>
        <jsp:include page="header.jsp"/>
        <div style="float: left;">
            <fieldset style="margin: 10px; padding: 10px;">
                <legend><b>USUARIOS DE LA RED</b></legend>
                <center>
                    <table style="width: 550px;">
                        <tr>
                            <th style="width: 150px;">Nombre</th>
                            <th style="width: 50px;">Fecha Nacimiento</th>
                            <th style="width: 50px;">Cant amigos en comun</th>
                            <th style="width: 100px;"></th>
                        </tr>
                        <%
                            while (iteraUsr.hasNext()) {
                                usr = iteraUsr.next();
                                if (!usr.getCorreo().equals(usrSolicitante.getCorreo())
                                        && !ctrlUsr.sonUsrAmigos(usr.getCorreo(), usrSolicitante.getCorreo())
                                        && !ctrlUsr.existeSolicitudUsuario(usr.getCorreo(), usrSolicitante.getCorreo())
                                        && !ctrlUsr.existeSolicitudUsuario(usrSolicitante.getCorreo(), usr.getCorreo())) {
                                    String datos = "solicitado=" + usr.getCorreo()
                                            + "&solicitante=" + usrSolicitante.getCorreo();
                                    String opciones = "&agregar=SI"
                                            + "&borrar=NO"
                                            + "&cancelar=NO"
                                            + "&aceptar=NO";
                                    amigosEnComun = new StringArray();
                                    amigosEnComun.getItem().add(usr.getCorreo());
                                    amigosEnComun.getItem().add(usrSolicitante.getCorreo());
                        %>
                        <tr>
                            <td>
                                <a href="perfil.jsp?mailUsr=<%=usr.getCorreo()%>"><%= usr.getNombre()%></a>
                            </td>
                            <td>
                                <%=dateFormat.format(usr.getFechaNac().toGregorianCalendar().getTime())%>
                            </td>
                            <td>
                                <%=ctrlUsr.amigosEnComun(amigosEnComun).getItem().size()%>
                            </td>
                            <td>
                                <a href="amistad.jsp?<%=datos + opciones%>">Agregar a mis amigos</a>
                            </td>
                        </tr>
                        <%
                                }
                            }
                        %>
                    </table>
                </center>
            </fieldset>
        </div>
        <div id="solicitudes">
            <fieldset style="margin: 10px; padding: 10px; width: 550px;">
                <legend><b>ACEPTAR/RECHAZAR SOLICITUDES</b></legend>
                <table style="width: 550px;">
                    <tr>
                        <th style="width: 120px;">Nombre</th>
                        <th style="width: 50px;">Fecha Nacimiento</th>
                        <th style="width: 50px;">Cant amigos en comun</th>
                        <th style="width: 100px;"></th>
                        <th style="width: 120px;"></th>
                    </tr>
                    <%
                        DataUsuario usrSolicitado = (DataUsuario) session.getAttribute("usr");
                        Iterator<DataUsuario> iteraSol = ctrlUsr.listarSolicitudes(usrSolicitado.getCorreo()).getItem().iterator();
                        while (iteraSol.hasNext()) {
                            usrSolicitante = iteraSol.next();
                            String datos = "solicitado=" + usrSolicitado.getCorreo()
                                    + "&solicitante=" + usrSolicitante.getCorreo();
                            String opciones = "&agregar=NO"
                                    + "&borrar=NO"
                                    + "&cancelar=NO"
                                    + "&aceptar=SI";
                            amigosEnComun = new StringArray();
                            amigosEnComun.getItem().add(usrSolicitado.getCorreo());
                            amigosEnComun.getItem().add(usrSolicitante.getCorreo());
                    %>
                    <tr>
                        <td>
                            <%= usrSolicitante.getNombre()%>
                        </td>
                        <td>
                            <%=dateFormat.format(usrSolicitante.getFechaNac().toGregorianCalendar().getTime())%>
                        </td>
                        <td>
                            <%=ctrlUsr.amigosEnComun(amigosEnComun).getItem().size()%>
                        </td>
                        <td>
                            <a href="amistad.jsp?<%=datos + opciones%>">Aceptar solicitud</a>
                        </td>
                        <%
                            opciones = "&agregar=NO"
                                    + "&borrar=NO"
                                    + "&cancelar=SI"
                                    + "&aceptar=NO";
                        %>
                        <td>
                            <a href="amistad.jsp?<%=datos + opciones%>">Rechazar solicitud</a>
                        </td>
                    </tr>
                    <%
                        }
                    %>
                </table>
            </fieldset>
        </div>
        <div id="eliminarAmistad">
            <fieldset style="margin: 10px; padding: 10px; width: 550px;">
                <legend><b>ELIMINAR AMIGOS</b></legend>
                <form action="eliminarAmistad.jsp" method="POST">
                    <% DataUsuario usrQueElimina = (DataUsuario) session.getAttribute("usr"); %>
                    <input type="hidden" name="usuarioQueElimina" value="<%= usrQueElimina.getCorreo() %>"/>
                    <table style="width: 420px;">
                        <tr>
                            <th style="width: 80px;"></th>
                            <th style="width: 130px;">Usuario</th>
                            <th style="width: 30px;"><input type="submit" value="Eliminar seleccionados" /></th>
                        </tr>
                        <%
                            iteraUsr = ctrlUsr.listarDAmigos(usrQueElimina.getCorreo()).getItem().iterator();
                            DataUsuario usrEliminado = null;
                            while (iteraUsr.hasNext()) {
                                usrEliminado = iteraUsr.next();
                        %>
                        <tr>
                            <td>
                                <img src="<%= usrEliminado.getImagen()%>" width="40" height="40"/>
                            </td>
                            <td>
                                <a href="perfil.jsp?mailUsr=<%=usrEliminado.getCorreo()%>"><%= usrEliminado.getNick()%></a>
                            </td>
                            <td>
                                <input type="checkbox" name="usuarios" value="<%= usrEliminado.getCorreo()%>" />
                            </td>
                        </tr>
                        <%
                            }
                        %>
                        <tr>
                            <td></td>
                            <td></td>
                            <td>
                                <input type="submit" value="Eliminar seleccionados" />
                            </td>
                        </tr>
                    </table>
                </form>
            </fieldset>
        </div>
        <jsp:include page="footer.jsp"/>
    </body>
</html>
